using UnityEngine;

namespace UbiArt.ITF {
	[Games(GameFlags.ROVersion)]
	public partial class Ray_PlayerControllerComponent_Template : Ray_BasicPlayerControllerComponent_Template {
		public float controllerHeight;
		public float controllerFlyModeSpeed;
		public float controllerWalkSpeed;
		public float controllerWalkMiniJumpForce;
		public float controllerWalkMiniJumpMaxStep;
		public float controllerWalkIceCompensationFrictionMultiplier;
		public float controllerAirSpeed;
		public float controllerAirSpeedWallJump;
		public float controllerAirControlDelayWallJump;
		public float controllerAirControlDelayDelayFall;
		public float controllerAirWallJumpExtraRadius;
		public float controllerAirWallJumpCornerCheckDistance;
		public float controllerAirTopXSpeed;
		public float controllerAirNoMoveFrictionX;
		public float controllerWallRunJumpDuration;
		public float controllerWallRunJumpAirControlDelay;
		public float controllerWallRunJumpKeepSpeedFactor;
		public float controllerWallRunJumpKeepForce;
		public float controllerWallRunMinSpeed;
		public float controllerWallRunUpThreshold;
		public float controllerSwimWaterResistMinSpeed;
		public float controllerSwimWaterResistMaxSpeed;
		public float controllerSwimWaterResistMaxMultiplier;
		public float controllerSwimWaterResistEnterDuration;
		public float controllerSwimWaterResistEnterForceSpeedMultiplier;
		public float controllerSwimWaterResistEnterDownForceSpeedMultiplier;
		public float controllerSwimTopSpeed;
		public float controllerSwimForce;
		public float controllerSwimMinExitSpeed;
		public float controllerSwimSurfaceForceDistanceMultiplierInside;
		public float controllerSwimSurfaceForceSpeedMultiplierInside;
		public float controllerSwimSurfaceForceDistanceMultiplierOutside;
		public float controllerSwimSurfaceForceSpeedMultiplierOutisde;
		public float controllerSwimSurfaceRange;
		public float controllerSwimJumpRange;
		public float controllerSwimTimeAllowAction;
		public float controllerSwimJumpDelayAfterEnter;
		public float controllerSwimTurnDistanceMultiplier;
		public float controllerSwimTurnSpeedMultiplier;
		public float controllerSwimSprintMaxSpeedMultiplier;
		public float controllerSwimCurveMaxOffset;
		public float controllerSwimCurveMaxDif;
		public float controllerSwimCurveForceS;
		public float controllerSwimCurveForceD;
		public float controllerSwimTurnUpsideDownWait;
		public float controllerSwimSprintJumpMinSpeed;
		public float controllerSwimSprintJumpGravityMultiplier;
		public float controllerSwimSprintJumpGravityDuration;
		public float controllerSwimSprintJumpAngularSpeedMultiplier;
		public float controllerSwimAccelerationBlendTime;
		public float controllerSwimDolphinYSpeed;
		public float controllerSwimDolphinWallJumpDisableTimer;
		public float controllerSwimPushThreshold;
		public float controllerSwimDashDuration;
		public float controllerMoveTargetMultiplierMin;
		public float controllerMoveTargetMultiplierMax;
		public float controllerMoveTargetBlendTime;
		public float controllerJumpQueueTime;
		public float controllerHitQueueTime;
		public float controllerHitDisableTimeOnBounce;
		public float controllerHitFilterNonFacingOpponentSpeedX;
		public float controllerHitQueueBlockingHitsMinDistance;
		public float controllerWindDisableOnBounce;
		public float controllerJumpOnAirTime;
		public float controllerJumpForceY;
		public float controllerJumpForceYBounceMultiplier;
		public float controllerJumpMultiplierClimbH;
		public float controllerJumpMultiplierNoImpulseClimbH;
		public float controllerJumpImpulseXClimbH;
		public float controllerJumpMultiplierClimbV;
		public float controllerJumpMultiplierNoImpulseClimbV;
		public float controllerJumpImpulseXClimbV;
		public float controllerJumpMultiplierHang;
		public float controllerJumpMultiplierNoImpulseHang;
		public float controllerJumpImpulseXHang;
		public float controllerJumpMultiplierRolling;
		public float controllerJumpMultiplierNoImpulseRolling;
		public float controllerJumpImpulseXRolling;
		public float controllerJumpMultiplierCrouch;
		public float controllerJumpMultiplierNoImpulseCrouch;
		public float controllerJumpImpulseXCrouch;
		public float controllerJumpMultiplierFallOnVictim;
		public float controllerJumpMultiplierNoImpulseFallOnVictim;
		public float controllerJumpImpulseXFallOnVictim;
		public float controllerJumpMultiplierPedestal;
		public float controllerJumpMultiplierNoImpulsePedestal;
		public float controllerJumpImpulseXPedestal;
		public float controllerJumpMultiplierOnPedestal;
		public float controllerJumpMultiplierNoImpulseOnPedestal;
		public float controllerJumpImpulseXOnPedestal;
		public float controllerDelayToAirSuspension;
		public float controllerAirSuspensionPushThreshold;
		public float controllerAirSuspensionMinYSpeed;
		public float controllerAirSuspensionMaxYSpeed;
		public float controllerAirSuspensionMinMultiplier;
		public float controllerAirSuspensionMaxMultiplier;
		public float controllerEfficiencyMaxSpeed;
		public float controllerAchievedSpeedFactorDefault;
		public float controllerAchievedSpeedS;
		public float controllerAchievedSpeedD;
		public Angle controllerEfficiencyMinGroundAngle;
		public Angle controllerEfficiencyMaxGroundAngle;
		public float controllerEfficiencyMinAngleMultiplier;
		public float controllerEfficiencyMaxAngleMultiplier;
		public float controllerCornerPoseExtraDistance;
		public Angle controllerHangingGroundMaxAngle;
		public float controllerHangingRadiusCheck;
		public float controllerHangingCornerMaxSpeed;
		public Vec2d controllerHangingOffsetSolid;
		public Vec2d controllerHangingOffsetCoop;
		public float controllerHangCoopMaxDistance;
		public Vec2d controllerHangingRectSize;
		public Vec2d controllerHangingCollisionExtentSolid;
		public Vec2d controllerHangingCollisionExtentCoop;
		public Vec2d controllerHangingRectOffset;
		public float controllerHangingMaxYSpeed;
		public float controllerHangingActivationTime;
		public float helicopterForceX;
		public float helicopterUnstickMinFrictionMultiplier;
		public float helicopterMinDragSpeedX;
		public float helicopterAirFrictionMultiplier;
		public float helicopterDragForceX;
		public Angle helicopterWindForcesAngle;
		public float helicopterWindForcesMultiplier;
		public Angle helicopterWindSpeedAngle;
		public Vec2d helicopterWindSpeedMultiplier;
		public float helicopterReleaseDelay;
		public float helicopterMaxSpeedUp;
		public float helicopterMaxSpeedDown;
		public float helicopterGravityMultiplier;
		public float helicopterCooldown;
		public float helicopterSuspensionTime;
		public float helicopterSuspensionMultiplier;
		public float airHitForceApplicationTime;
		public float airHitUnstickMinFrictionMultiplier;
		public float airHitMinDragSpeedX;
		public float airHitDragForceX;
		public Vec2d airHitSpeedMultiplier;
		public Vec2d airHitSpeedMultiplierReduced;
		public float airHitGravityMultiplier;
		public float rehitTimer;
		public float actionPoseFightDuration;
		public Angle minBounceAngle;
		public float bounceHeightPlatformLevel1;
		public float bounceHeightPlatformLevel2;
		public float bounceHeightPlatformLevel3;
		public float bounceHeightEnemyLevel1;
		public float bounceHeightEnemyLevel2;
		public float bounceHeightEnemyLevel3;
		public float bounceHeightTalkingHatLevel1;
		public float bounceHeightTalkingHatLevel2;
		public float bounceHeightTalkingHatLevel3;
		public float bounceHeightPolylineLevel1;
		public float bounceHeightPolylineLevel2;
		public float bounceHeightPolylineLevel3;
		public float bounceHeightWave;
		public float bounceHeightWaveLevel3;
		public float bounceEnemySpeedXMultiplier;
		public float bouncePlatformAirControlDelayLevel1;
		public float bouncePlatformAirControlDelayLevel2;
		public float bouncePlatformAirControlDelayLevel3;
		public float bounceEnemyAirControlDelayLevel1;
		public float bounceEnemyAirControlDelayLevel2;
		public float bounceEnemyAirControlDelayLevel3;
		public float bounceTalkingHatAirControlDelayLevel1;
		public float bounceTalkingHatAirControlDelayLevel2;
		public float bounceTalkingHatAirControlDelayLevel3;
		public float bouncePolylineMaxXSpeed;
		public float bounceDelay;
		public float bounceRepositionDuration;
		public float bounceToActorYFuncPoint0Dist;
		public float bounceToActorYFuncPoint1Dist;
		public float bounceToActorXZFuncPoint0T;
		public float bounceToActorXZFuncPoint1T;
		public float bounceToActorSpeed;
		public float bounceToActorMinTime;
		public float windTunnelExitSpeedLevel0;
		public float windTunnelExitSpeedLevel1;
		public float windTunnelExitSpeedLevel2;
		public Vec2d controllerClimbCollisionCheckExtent;
		public float controllerClimbVerticalSpeedUp;
		public float controllerClimbVerticalAscendAcceleration;
		public float controllerClimbVerticalDescendAcceleration;
		public float controllerClimbVerticalDescendMaxSpeed;
		public float controllerClimbVerticalDescendMaxSpeedSprint;
		public float controllerClimbHorizontalSpeed;
		public float controllerClimbHorizontalMoveAnimRate;
		public float controllerClimbSprintSpeedMultiplier;
		public float controllerClimbHorizontalDescendMaxSpeed;
		public float controllerClimbHorizontalDescendMaxSpeedSprint;
		public float controllerClimbSlideDisableAirControl;
		public float controllerClimbEdgeInertiaBrake;
		public float controllerClimbEdgeDistanceRange;
		public float controllerClimbEdgeActivationTime;
		public float controllerClimbEdgeSwingImpulse;
		public float controllerClimbEdgeSwingImpulseReduced;
		public float controllerClimbEdgePunchImpulse;
		public float controllerClimbEdgeMoveImpulse;
		public Angle controllerClimbEdgeAngularSpeed;
		public float controllerClimbEdgeCoopHangEdgeRange;
		public Vec2d controllerClimbMaxJumpSpeedTransfer;
		public Vec2d controllerPunchShapeOffset;
		public float controllerReceivePunchFrontWeakForce;
		public float controllerReceivePunchFrontStrongForce;
		public float controllerReceivePunchFrontMegaForce;
		public float controllerReceivePunchFrontWeakFrictionMult;
		public float controllerReceivePunchFrontStrongFrictionMult;
		public float controllerReceivePunchFrontMegaFrictionMult;
		public float controllerReceivePunchUpWeakForce;
		public float controllerReceivePunchUpStrongForce;
		public float controllerReceivePunchUpMegaForce;
		public float controllerReceivePunchUpWeakGravityMultiplier;
		public float controllerReceivePunchUpStrongGravityMultiplier;
		public float controllerReceivePunchUpMegaGravityMultiplier;
		public float controllerReceiveEarthquakeWeakForce;
		public float controllerReceiveEarthquakeStrongForce;
		public float controllerReceiveEarthquakeMegaForce;
		public float controllerReceiveBounceVWeakForce;
		public float controllerReceiveBounceVStrongForce;
		public float controllerReceiveBounceVMegaForce;
		public float controllerReceiveBounceHWeakForce;
		public float controllerReceiveBounceHStrongForce;
		public float controllerReceiveBounceHMegaForce;
		public float controllerReceiveBounceWeakFrictionMultiplier;
		public float controllerReceiveBounceStrongFrictionMultiplier;
		public float controllerReceiveBounceMegaFrictionMultiplier;
		public float controllerReceiveBounceWeakSwimingMult;
		public float controllerReceiveBounceStrongSwimingMult;
		public float controllerReceiveBounceMegaSwimingMult;
		public float controllerReceiveHitSwimGravityMultiplier;
		public float controllerSlideFrictionMultiplier;
		public float controllerSlideMinFastSpeed;
		public uint controllerSlideHitLevel;
		public float controllerSlideMinSpeed;
		public float controllerSlideMinSpeedMultiplierForMinFriction;
		public float controllerSlideMinSpeedMultiplierForMaxFriction;
		public float controllerSlideFallDelay;
		public float controllerSurfingJumpTime;
		public float controllerHoverMinYSpeed;
		public float controllerMettrailleMaxHits;
		public uint controllerMettrailleFinalHitLevel;
		public uint controllerMettrailleGroundVariation;
		public uint controllerMettrailleAirVariation;
		public uint controllerMettrailleMaxBufferedHits;
		public float controllerAccrobaticStageKeepTime;
		public float controllerSwingAdjustTime;
		public float controllerSwingInterpolateTime;
		public float controllerSwingHitAreaHeight;
		public float controllerSwingHitAreaOffset;
		public float controllerSwingHitMinAngularSpeed;
		public float controllerSwingInitialBoost;
		public float controllerSwingJumpXForceThreshold;
		public float controllerSwingJumpXAngleThreshold;
		public float controllerSwingJumpForceX;
		public float controllerSwingJumpDisableDelay;
		public uint controllerUTurnHitLevel;
		public uint controllerUTurnAirHitLevel;
		public uint controllerCrouchedHitLevel;
		public uint controllerTornadoHitLevel;
		public uint controllerSpinHitLevel;
		public uint controllerReducedSizeHitLevel;
		public uint controllerUpperkickHitLevel;
		public uint controllerCrushHitLevel;
		public float controllerCrushHitIncreaseFirstTime;
		public float controllerCrushHitIncreaseSecondTime;
		public float controllerCrushHitRetriggerDelay;
		public uint controllerSlideDownHitLevel;
		public uint controllerSwingHitLevel;
		public uint controllerHangCoopHitLevel;
		public uint controllerBurstHitLevel;
		public uint controllerBurstAirHitLevel;
		public uint controllerNormalPunchLevelForShakeCam;
		public float switchHitBufferTime;
		public float UTurnComboTime;
		public float crushHitSuspensionTime;
		public float crushHitMinYSpeed;
		public float crushHitYSpeedMultiplier;
		public float crushHitDownForce;
		public float crushHitFrictionMultiplier;
		public float slideDownMinSpeed;
		public float swimAttackNormalDuration;
		public float swimAttackNormalSpeed;
		public float swimAttackSprintDuration;
		public float swimAttackSprintSpeed;
		public float swimAttackCooldown;
		public float swimAttackFriction;
		public float swimAttackMinSpeed;
		public float swimAttackMoveDamping;
		public float swimAttackSpamTime;
		public float swimAttackSpamImpulseMultiplier;
		public float swimAttackSpamImpulseMultiplierSprint;
		public float tornadoDuration;
		public float tornadoSpeed;
		public float tornadoCooldown;
		public float tornadoMinSpeed;
		public float tornadoFrictionMultiplier;
		public float tornadoAllowMoveTime;
		public float reducedSizeHitDuration;
		public float reducedSizeHitAirDuration;
		public float reducedSizeHitUpDuration;
		public float reducedSizeHitFriction;
		public float reducedSizeHitGravity;
		public float reducedSizeHitSideForceGround;
		public float reducedSizeHitSideForceAir;
		public float reducedSizeHitUpForce;
		public float reducedSizeHitMinSpeed;
		public float reducedSizeHitCrushAttackQueueLength;
		public float reducedSizeHitCrushDistance;
		public float reducedSizeHitCooldown;
		public float reducedSizeHitGroundFrictionMultiplierMin;
		public float reducedSizeHitGroundFrictionMultiplierMax;
		public float reducedSizeHitUpCooldown;
		public StringID hitFxBoneName;
		public float hitPrepareLengthWeak;
		public float hitPrepareLengthStrong;
		public float hitPrepareLengthMega;
		public float reHitDelayPermanentHit;
		public float reHitDelayComboHit;
		public float wallSlideStartDelay;
		public float wallSlideStartDelaySpeedThreshold;
		public float wallSlideMinLinearSpeed;
		public float wallSlideMaxLinearSpeed;
		public Angle wallSlideMinAngularSpeed;
		public Angle wallSlideMaxAngularSpeed;
		public float wallSlideBrakeTime;
		public float wallSlideStartSpeed;
		public float wallSlideGravityMultiplier;
		public float wallSlideJumpImpulseX;
		public float wallSlideFrictionCoefCondition;
		public float wallSlideMinimumEdgeMargin;
		public Angle wallPushMaxWallAngle;
		public float wallPushForce;
		public float wallPushDelay;
		public float wallPushRepushDelay;
		public float wallSlideMaxSpeed;
		public float wallSlideUnstickDelay;
		public float wallSlideRestickDelay;
		public float wallSlideExtraRadius;
		public float wallSlideYSpeedThresholdToHang;
		public float disableCrouchTime;
		public float crouchUnhangTime;
		public float rollingFrictionMultiplier;
		public float rollingMinSpeed;
		public float fallOnVictimMinSpeed;
		public float sprintActivationLandingDelay;
		public float sprintWalkForceMultiplier;
		public float sprintEfficiencyMaxSpeedMultiplier;
		public float sprintAccelerationDuration;
		public float sprintReleaseForceMultiplier;
		public float sprintReleaseForceMax;
		public Path bounceToLayerFXFile;
		public Path tinyFXFile;
		public Color tinyTrailSprintColor;
		public Color tinyTrailWallrunColor;
		public Color tinyTrailWallrunJumpColor;
		public Color tinyTrailNormalColor;
		public float controllerPunchPushbackRadius;
		public Generic<PhysShape> phantomShapeCrouch;
		public Generic<PhysShape> phantomShapeSwim;
		public float damageInmunityTime;
		public float damageInmunityTimeReceiveHit;
		public float damageInmunityTimeRevive;
		public float damageInmunityTimeReceiveHitRevive;
		public float squashBounceMargin;
		public uint squashHurtLevel;
		public float squashDeathPenetration;
		public StringID characterSnapBone;
		public Ray_PlayerControllerComponent.StateDeadSoul_Template stateDeadSoul;
		public Ray_PlayerControllerComponent.StateRevive_Template stateRevive;
		public float avoidanceRadius;
		public float darktoonificationPosOffset;
		public float controllerPedestalWalkMultiplier;
		public float controllerPedestalAreaRadius;
		public float controllerPedestalDistanceCheck;
		public float controllerPedestalFeetDistanceCheck;
		public float controllerPedestalDisableTimer;
		public Angle controllerPedestalInputCone;
		public float controllerOnPedestalLandBounceHeight;
		public float controllerDeathSeqWait;
		public float controllerMoveCursorMinEfficiency;
		public float controllerMoveCursorMaxEfficiency;
		public float controllerMoveCursorMinAngle;
		public float controllerMoveCursorMaxAngle;
		public float controllerMoveCursorMinMultiplier;
		public float controllerMoveCursorMaxMultiplier;
		public float controllerMoveCursorEfficiencyAngle;
		public float controllerWalkOnWallsDisableDelay;
		public float controllerWalkOnWallsReleaseStickDuration;
		public Path controllerDeathActorFXSpawn;
		public Margin offscreenDeathMargin;
		public float offscreenDeathSmooth;
		public Margin offscreenDeathFxMargin;
		public bool applyWindSpeedLimitation;
		public float clampMaxSpeedTotal;
		public float clampMaxSpeedX;
		public float clampMaxSpeedY;
		public float airBrakeMaxSpeedX;
		public float softCollisionRadiusMultiplier;
		public float softCollisionExitSpeed;
		public float softCollisionExitForce;
		public float softCollisionRestoreForceDelay;
		public float softCollisionRestoreForceDuration;
		public float cameraLimiterMaxCoeff;
		public float stargateSuckinForceK;
		public float stargateSuckinForceD;
		public float stargateNoiseAmplitude;
		public float stargateNoiseTimeMultiplier;
		public float stargateTravelRotationSpeedMultiplier;
		public float stargateTravelDecelerateTime;
		public float stargateTravelDecelerateMultiplier;
		public Path stargateTravelTrailPath;
		public float deadSoulInactiveOptOutTime;
		public Ray_HeartShield_Template heartShield;
		public Ray_SuperPunchGauge_Template superPunchBasicGauge;
		public Ray_SuperPunchGauge_Template superPunchSeekingGauge;
		public Ray_SwarmRepellerPowerUp_Template swarmRepeller;
		
		public Ray_Magnet_Template magnet;
		public Ray_PhoenixGadget_Template phoenixGadget;

		protected override void SerializeImpl(CSerializerObject s) {
			base.SerializeImpl(s);
			controllerHeight = s.Serialize<float>(controllerHeight, name: "controllerHeight");
			controllerFlyModeSpeed = s.Serialize<float>(controllerFlyModeSpeed, name: "controllerFlyModeSpeed");
			controllerWalkSpeed = s.Serialize<float>(controllerWalkSpeed, name: "controllerWalkSpeed");
			controllerWalkMiniJumpForce = s.Serialize<float>(controllerWalkMiniJumpForce, name: "controllerWalkMiniJumpForce");
			controllerWalkMiniJumpMaxStep = s.Serialize<float>(controllerWalkMiniJumpMaxStep, name: "controllerWalkMiniJumpMaxStep");
			controllerWalkIceCompensationFrictionMultiplier = s.Serialize<float>(controllerWalkIceCompensationFrictionMultiplier, name: "controllerWalkIceCompensationFrictionMultiplier");
			controllerAirSpeed = s.Serialize<float>(controllerAirSpeed, name: "controllerAirSpeed");
			controllerAirSpeedWallJump = s.Serialize<float>(controllerAirSpeedWallJump, name: "controllerAirSpeedWallJump");
			controllerAirControlDelayWallJump = s.Serialize<float>(controllerAirControlDelayWallJump, name: "controllerAirControlDelayWallJump");
			controllerAirControlDelayDelayFall = s.Serialize<float>(controllerAirControlDelayDelayFall, name: "controllerAirControlDelayDelayFall");
			controllerAirWallJumpExtraRadius = s.Serialize<float>(controllerAirWallJumpExtraRadius, name: "controllerAirWallJumpExtraRadius");
			controllerAirWallJumpCornerCheckDistance = s.Serialize<float>(controllerAirWallJumpCornerCheckDistance, name: "controllerAirWallJumpCornerCheckDistance");
			controllerAirTopXSpeed = s.Serialize<float>(controllerAirTopXSpeed, name: "controllerAirTopXSpeed");
			controllerAirNoMoveFrictionX = s.Serialize<float>(controllerAirNoMoveFrictionX, name: "controllerAirNoMoveFrictionX");
			controllerWallRunJumpDuration = s.Serialize<float>(controllerWallRunJumpDuration, name: "controllerWallRunJumpDuration");
			controllerWallRunJumpAirControlDelay = s.Serialize<float>(controllerWallRunJumpAirControlDelay, name: "controllerWallRunJumpAirControlDelay");
			controllerWallRunJumpKeepSpeedFactor = s.Serialize<float>(controllerWallRunJumpKeepSpeedFactor, name: "controllerWallRunJumpKeepSpeedFactor");
			controllerWallRunJumpKeepForce = s.Serialize<float>(controllerWallRunJumpKeepForce, name: "controllerWallRunJumpKeepForce");
			controllerWallRunMinSpeed = s.Serialize<float>(controllerWallRunMinSpeed, name: "controllerWallRunMinSpeed");
			controllerWallRunUpThreshold = s.Serialize<float>(controllerWallRunUpThreshold, name: "controllerWallRunUpThreshold");
			controllerSwimWaterResistMinSpeed = s.Serialize<float>(controllerSwimWaterResistMinSpeed, name: "controllerSwimWaterResistMinSpeed");
			controllerSwimWaterResistMaxSpeed = s.Serialize<float>(controllerSwimWaterResistMaxSpeed, name: "controllerSwimWaterResistMaxSpeed");
			controllerSwimWaterResistMaxMultiplier = s.Serialize<float>(controllerSwimWaterResistMaxMultiplier, name: "controllerSwimWaterResistMaxMultiplier");
			controllerSwimWaterResistEnterDuration = s.Serialize<float>(controllerSwimWaterResistEnterDuration, name: "controllerSwimWaterResistEnterDuration");
			controllerSwimWaterResistEnterForceSpeedMultiplier = s.Serialize<float>(controllerSwimWaterResistEnterForceSpeedMultiplier, name: "controllerSwimWaterResistEnterForceSpeedMultiplier");
			controllerSwimWaterResistEnterDownForceSpeedMultiplier = s.Serialize<float>(controllerSwimWaterResistEnterDownForceSpeedMultiplier, name: "controllerSwimWaterResistEnterDownForceSpeedMultiplier");
			controllerSwimTopSpeed = s.Serialize<float>(controllerSwimTopSpeed, name: "controllerSwimTopSpeed");
			controllerSwimForce = s.Serialize<float>(controllerSwimForce, name: "controllerSwimForce");
			controllerSwimMinExitSpeed = s.Serialize<float>(controllerSwimMinExitSpeed, name: "controllerSwimMinExitSpeed");
			controllerSwimSurfaceForceDistanceMultiplierInside = s.Serialize<float>(controllerSwimSurfaceForceDistanceMultiplierInside, name: "controllerSwimSurfaceForceDistanceMultiplierInside");
			controllerSwimSurfaceForceSpeedMultiplierInside = s.Serialize<float>(controllerSwimSurfaceForceSpeedMultiplierInside, name: "controllerSwimSurfaceForceSpeedMultiplierInside");
			controllerSwimSurfaceForceDistanceMultiplierOutside = s.Serialize<float>(controllerSwimSurfaceForceDistanceMultiplierOutside, name: "controllerSwimSurfaceForceDistanceMultiplierOutside");
			controllerSwimSurfaceForceSpeedMultiplierOutisde = s.Serialize<float>(controllerSwimSurfaceForceSpeedMultiplierOutisde, name: "controllerSwimSurfaceForceSpeedMultiplierOutisde");
			controllerSwimSurfaceRange = s.Serialize<float>(controllerSwimSurfaceRange, name: "controllerSwimSurfaceRange");
			controllerSwimJumpRange = s.Serialize<float>(controllerSwimJumpRange, name: "controllerSwimJumpRange");
			controllerSwimTimeAllowAction = s.Serialize<float>(controllerSwimTimeAllowAction, name: "controllerSwimTimeAllowAction");
			controllerSwimJumpDelayAfterEnter = s.Serialize<float>(controllerSwimJumpDelayAfterEnter, name: "controllerSwimJumpDelayAfterEnter");
			controllerSwimTurnDistanceMultiplier = s.Serialize<float>(controllerSwimTurnDistanceMultiplier, name: "controllerSwimTurnDistanceMultiplier");
			controllerSwimTurnSpeedMultiplier = s.Serialize<float>(controllerSwimTurnSpeedMultiplier, name: "controllerSwimTurnSpeedMultiplier");
			controllerSwimSprintMaxSpeedMultiplier = s.Serialize<float>(controllerSwimSprintMaxSpeedMultiplier, name: "controllerSwimSprintMaxSpeedMultiplier");
			controllerSwimCurveMaxOffset = s.Serialize<float>(controllerSwimCurveMaxOffset, name: "controllerSwimCurveMaxOffset");
			controllerSwimCurveMaxDif = s.Serialize<float>(controllerSwimCurveMaxDif, name: "controllerSwimCurveMaxDif");
			controllerSwimCurveForceS = s.Serialize<float>(controllerSwimCurveForceS, name: "controllerSwimCurveForceS");
			controllerSwimCurveForceD = s.Serialize<float>(controllerSwimCurveForceD, name: "controllerSwimCurveForceD");
			controllerSwimTurnUpsideDownWait = s.Serialize<float>(controllerSwimTurnUpsideDownWait, name: "controllerSwimTurnUpsideDownWait");
			controllerSwimSprintJumpMinSpeed = s.Serialize<float>(controllerSwimSprintJumpMinSpeed, name: "controllerSwimSprintJumpMinSpeed");
			controllerSwimSprintJumpGravityMultiplier = s.Serialize<float>(controllerSwimSprintJumpGravityMultiplier, name: "controllerSwimSprintJumpGravityMultiplier");
			controllerSwimSprintJumpGravityDuration = s.Serialize<float>(controllerSwimSprintJumpGravityDuration, name: "controllerSwimSprintJumpGravityDuration");
			controllerSwimSprintJumpAngularSpeedMultiplier = s.Serialize<float>(controllerSwimSprintJumpAngularSpeedMultiplier, name: "controllerSwimSprintJumpAngularSpeedMultiplier");
			controllerSwimAccelerationBlendTime = s.Serialize<float>(controllerSwimAccelerationBlendTime, name: "controllerSwimAccelerationBlendTime");
			controllerSwimDolphinYSpeed = s.Serialize<float>(controllerSwimDolphinYSpeed, name: "controllerSwimDolphinYSpeed");
			controllerSwimDolphinWallJumpDisableTimer = s.Serialize<float>(controllerSwimDolphinWallJumpDisableTimer, name: "controllerSwimDolphinWallJumpDisableTimer");
			controllerSwimPushThreshold = s.Serialize<float>(controllerSwimPushThreshold, name: "controllerSwimPushThreshold");
			controllerSwimDashDuration = s.Serialize<float>(controllerSwimDashDuration, name: "controllerSwimDashDuration");
			controllerMoveTargetMultiplierMin = s.Serialize<float>(controllerMoveTargetMultiplierMin, name: "controllerMoveTargetMultiplierMin");
			controllerMoveTargetMultiplierMax = s.Serialize<float>(controllerMoveTargetMultiplierMax, name: "controllerMoveTargetMultiplierMax");
			controllerMoveTargetBlendTime = s.Serialize<float>(controllerMoveTargetBlendTime, name: "controllerMoveTargetBlendTime");
			controllerJumpQueueTime = s.Serialize<float>(controllerJumpQueueTime, name: "controllerJumpQueueTime");
			controllerHitQueueTime = s.Serialize<float>(controllerHitQueueTime, name: "controllerHitQueueTime");
			controllerHitDisableTimeOnBounce = s.Serialize<float>(controllerHitDisableTimeOnBounce, name: "controllerHitDisableTimeOnBounce");
			controllerHitFilterNonFacingOpponentSpeedX = s.Serialize<float>(controllerHitFilterNonFacingOpponentSpeedX, name: "controllerHitFilterNonFacingOpponentSpeedX");
			controllerHitQueueBlockingHitsMinDistance = s.Serialize<float>(controllerHitQueueBlockingHitsMinDistance, name: "controllerHitQueueBlockingHitsMinDistance");
			controllerWindDisableOnBounce = s.Serialize<float>(controllerWindDisableOnBounce, name: "controllerWindDisableOnBounce");
			controllerJumpOnAirTime = s.Serialize<float>(controllerJumpOnAirTime, name: "controllerJumpOnAirTime");
			controllerJumpForceY = s.Serialize<float>(controllerJumpForceY, name: "controllerJumpForceY");
			controllerJumpForceYBounceMultiplier = s.Serialize<float>(controllerJumpForceYBounceMultiplier, name: "controllerJumpForceYBounceMultiplier");
			controllerJumpMultiplierClimbH = s.Serialize<float>(controllerJumpMultiplierClimbH, name: "controllerJumpMultiplierClimbH");
			controllerJumpMultiplierNoImpulseClimbH = s.Serialize<float>(controllerJumpMultiplierNoImpulseClimbH, name: "controllerJumpMultiplierNoImpulseClimbH");
			controllerJumpImpulseXClimbH = s.Serialize<float>(controllerJumpImpulseXClimbH, name: "controllerJumpImpulseXClimbH");
			controllerJumpMultiplierClimbV = s.Serialize<float>(controllerJumpMultiplierClimbV, name: "controllerJumpMultiplierClimbV");
			controllerJumpMultiplierNoImpulseClimbV = s.Serialize<float>(controllerJumpMultiplierNoImpulseClimbV, name: "controllerJumpMultiplierNoImpulseClimbV");
			controllerJumpImpulseXClimbV = s.Serialize<float>(controllerJumpImpulseXClimbV, name: "controllerJumpImpulseXClimbV");
			controllerJumpMultiplierHang = s.Serialize<float>(controllerJumpMultiplierHang, name: "controllerJumpMultiplierHang");
			controllerJumpMultiplierNoImpulseHang = s.Serialize<float>(controllerJumpMultiplierNoImpulseHang, name: "controllerJumpMultiplierNoImpulseHang");
			controllerJumpImpulseXHang = s.Serialize<float>(controllerJumpImpulseXHang, name: "controllerJumpImpulseXHang");
			controllerJumpMultiplierRolling = s.Serialize<float>(controllerJumpMultiplierRolling, name: "controllerJumpMultiplierRolling");
			controllerJumpMultiplierNoImpulseRolling = s.Serialize<float>(controllerJumpMultiplierNoImpulseRolling, name: "controllerJumpMultiplierNoImpulseRolling");
			controllerJumpImpulseXRolling = s.Serialize<float>(controllerJumpImpulseXRolling, name: "controllerJumpImpulseXRolling");
			controllerJumpMultiplierCrouch = s.Serialize<float>(controllerJumpMultiplierCrouch, name: "controllerJumpMultiplierCrouch");
			controllerJumpMultiplierNoImpulseCrouch = s.Serialize<float>(controllerJumpMultiplierNoImpulseCrouch, name: "controllerJumpMultiplierNoImpulseCrouch");
			controllerJumpImpulseXCrouch = s.Serialize<float>(controllerJumpImpulseXCrouch, name: "controllerJumpImpulseXCrouch");
			controllerJumpMultiplierFallOnVictim = s.Serialize<float>(controllerJumpMultiplierFallOnVictim, name: "controllerJumpMultiplierFallOnVictim");
			controllerJumpMultiplierNoImpulseFallOnVictim = s.Serialize<float>(controllerJumpMultiplierNoImpulseFallOnVictim, name: "controllerJumpMultiplierNoImpulseFallOnVictim");
			controllerJumpImpulseXFallOnVictim = s.Serialize<float>(controllerJumpImpulseXFallOnVictim, name: "controllerJumpImpulseXFallOnVictim");
			controllerJumpMultiplierPedestal = s.Serialize<float>(controllerJumpMultiplierPedestal, name: "controllerJumpMultiplierPedestal");
			controllerJumpMultiplierNoImpulsePedestal = s.Serialize<float>(controllerJumpMultiplierNoImpulsePedestal, name: "controllerJumpMultiplierNoImpulsePedestal");
			controllerJumpImpulseXPedestal = s.Serialize<float>(controllerJumpImpulseXPedestal, name: "controllerJumpImpulseXPedestal");
			controllerJumpMultiplierOnPedestal = s.Serialize<float>(controllerJumpMultiplierOnPedestal, name: "controllerJumpMultiplierOnPedestal");
			controllerJumpMultiplierNoImpulseOnPedestal = s.Serialize<float>(controllerJumpMultiplierNoImpulseOnPedestal, name: "controllerJumpMultiplierNoImpulseOnPedestal");
			controllerJumpImpulseXOnPedestal = s.Serialize<float>(controllerJumpImpulseXOnPedestal, name: "controllerJumpImpulseXOnPedestal");
			controllerDelayToAirSuspension = s.Serialize<float>(controllerDelayToAirSuspension, name: "controllerDelayToAirSuspension");
			controllerAirSuspensionPushThreshold = s.Serialize<float>(controllerAirSuspensionPushThreshold, name: "controllerAirSuspensionPushThreshold");
			controllerAirSuspensionMinYSpeed = s.Serialize<float>(controllerAirSuspensionMinYSpeed, name: "controllerAirSuspensionMinYSpeed");
			controllerAirSuspensionMaxYSpeed = s.Serialize<float>(controllerAirSuspensionMaxYSpeed, name: "controllerAirSuspensionMaxYSpeed");
			controllerAirSuspensionMinMultiplier = s.Serialize<float>(controllerAirSuspensionMinMultiplier, name: "controllerAirSuspensionMinMultiplier");
			controllerAirSuspensionMaxMultiplier = s.Serialize<float>(controllerAirSuspensionMaxMultiplier, name: "controllerAirSuspensionMaxMultiplier");
			controllerEfficiencyMaxSpeed = s.Serialize<float>(controllerEfficiencyMaxSpeed, name: "controllerEfficiencyMaxSpeed");
			controllerAchievedSpeedFactorDefault = s.Serialize<float>(controllerAchievedSpeedFactorDefault, name: "controllerAchievedSpeedFactorDefault");
			controllerAchievedSpeedS = s.Serialize<float>(controllerAchievedSpeedS, name: "controllerAchievedSpeedS");
			controllerAchievedSpeedD = s.Serialize<float>(controllerAchievedSpeedD, name: "controllerAchievedSpeedD");
			controllerEfficiencyMinGroundAngle = s.SerializeObject<Angle>(controllerEfficiencyMinGroundAngle, name: "controllerEfficiencyMinGroundAngle");
			controllerEfficiencyMaxGroundAngle = s.SerializeObject<Angle>(controllerEfficiencyMaxGroundAngle, name: "controllerEfficiencyMaxGroundAngle");
			controllerEfficiencyMinAngleMultiplier = s.Serialize<float>(controllerEfficiencyMinAngleMultiplier, name: "controllerEfficiencyMinAngleMultiplier");
			controllerEfficiencyMaxAngleMultiplier = s.Serialize<float>(controllerEfficiencyMaxAngleMultiplier, name: "controllerEfficiencyMaxAngleMultiplier");
			controllerCornerPoseExtraDistance = s.Serialize<float>(controllerCornerPoseExtraDistance, name: "controllerCornerPoseExtraDistance");
			controllerHangingGroundMaxAngle = s.SerializeObject<Angle>(controllerHangingGroundMaxAngle, name: "controllerHangingGroundMaxAngle");
			controllerHangingRadiusCheck = s.Serialize<float>(controllerHangingRadiusCheck, name: "controllerHangingRadiusCheck");
			controllerHangingCornerMaxSpeed = s.Serialize<float>(controllerHangingCornerMaxSpeed, name: "controllerHangingCornerMaxSpeed");
			controllerHangingOffsetSolid = s.SerializeObject<Vec2d>(controllerHangingOffsetSolid, name: "controllerHangingOffsetSolid");
			controllerHangingOffsetCoop = s.SerializeObject<Vec2d>(controllerHangingOffsetCoop, name: "controllerHangingOffsetCoop");
			controllerHangCoopMaxDistance = s.Serialize<float>(controllerHangCoopMaxDistance, name: "controllerHangCoopMaxDistance");
			controllerHangingRectSize = s.SerializeObject<Vec2d>(controllerHangingRectSize, name: "controllerHangingRectSize");
			controllerHangingCollisionExtentSolid = s.SerializeObject<Vec2d>(controllerHangingCollisionExtentSolid, name: "controllerHangingCollisionExtentSolid");
			controllerHangingCollisionExtentCoop = s.SerializeObject<Vec2d>(controllerHangingCollisionExtentCoop, name: "controllerHangingCollisionExtentCoop");
			controllerHangingRectOffset = s.SerializeObject<Vec2d>(controllerHangingRectOffset, name: "controllerHangingRectOffset");
			controllerHangingMaxYSpeed = s.Serialize<float>(controllerHangingMaxYSpeed, name: "controllerHangingMaxYSpeed");
			controllerHangingActivationTime = s.Serialize<float>(controllerHangingActivationTime, name: "controllerHangingActivationTime");
			helicopterForceX = s.Serialize<float>(helicopterForceX, name: "helicopterForceX");
			helicopterUnstickMinFrictionMultiplier = s.Serialize<float>(helicopterUnstickMinFrictionMultiplier, name: "helicopterUnstickMinFrictionMultiplier");
			helicopterMinDragSpeedX = s.Serialize<float>(helicopterMinDragSpeedX, name: "helicopterMinDragSpeedX");
			helicopterAirFrictionMultiplier = s.Serialize<float>(helicopterAirFrictionMultiplier, name: "helicopterAirFrictionMultiplier");
			helicopterDragForceX = s.Serialize<float>(helicopterDragForceX, name: "helicopterDragForceX");
			helicopterWindForcesAngle = s.SerializeObject<Angle>(helicopterWindForcesAngle, name: "helicopterWindForcesAngle");
			helicopterWindForcesMultiplier = s.Serialize<float>(helicopterWindForcesMultiplier, name: "helicopterWindForcesMultiplier");
			helicopterWindSpeedAngle = s.SerializeObject<Angle>(helicopterWindSpeedAngle, name: "helicopterWindSpeedAngle");
			helicopterWindSpeedMultiplier = s.SerializeObject<Vec2d>(helicopterWindSpeedMultiplier, name: "helicopterWindSpeedMultiplier");
			helicopterReleaseDelay = s.Serialize<float>(helicopterReleaseDelay, name: "helicopterReleaseDelay");
			helicopterMaxSpeedUp = s.Serialize<float>(helicopterMaxSpeedUp, name: "helicopterMaxSpeedUp");
			helicopterMaxSpeedDown = s.Serialize<float>(helicopterMaxSpeedDown, name: "helicopterMaxSpeedDown");
			helicopterGravityMultiplier = s.Serialize<float>(helicopterGravityMultiplier, name: "helicopterGravityMultiplier");
			helicopterCooldown = s.Serialize<float>(helicopterCooldown, name: "helicopterCooldown");
			helicopterSuspensionTime = s.Serialize<float>(helicopterSuspensionTime, name: "helicopterSuspensionTime");
			helicopterSuspensionMultiplier = s.Serialize<float>(helicopterSuspensionMultiplier, name: "helicopterSuspensionMultiplier");
			airHitForceApplicationTime = s.Serialize<float>(airHitForceApplicationTime, name: "airHitForceApplicationTime");
			airHitUnstickMinFrictionMultiplier = s.Serialize<float>(airHitUnstickMinFrictionMultiplier, name: "airHitUnstickMinFrictionMultiplier");
			airHitMinDragSpeedX = s.Serialize<float>(airHitMinDragSpeedX, name: "airHitMinDragSpeedX");
			airHitDragForceX = s.Serialize<float>(airHitDragForceX, name: "airHitDragForceX");
			airHitSpeedMultiplier = s.SerializeObject<Vec2d>(airHitSpeedMultiplier, name: "airHitSpeedMultiplier");
			airHitSpeedMultiplierReduced = s.SerializeObject<Vec2d>(airHitSpeedMultiplierReduced, name: "airHitSpeedMultiplierReduced");
			airHitGravityMultiplier = s.Serialize<float>(airHitGravityMultiplier, name: "airHitGravityMultiplier");
			rehitTimer = s.Serialize<float>(rehitTimer, name: "rehitTimer");
			actionPoseFightDuration = s.Serialize<float>(actionPoseFightDuration, name: "actionPoseFightDuration");
			minBounceAngle = s.SerializeObject<Angle>(minBounceAngle, name: "minBounceAngle");
			bounceHeightPlatformLevel1 = s.Serialize<float>(bounceHeightPlatformLevel1, name: "bounceHeightPlatformLevel1");
			bounceHeightPlatformLevel2 = s.Serialize<float>(bounceHeightPlatformLevel2, name: "bounceHeightPlatformLevel2");
			bounceHeightPlatformLevel3 = s.Serialize<float>(bounceHeightPlatformLevel3, name: "bounceHeightPlatformLevel3");
			bounceHeightEnemyLevel1 = s.Serialize<float>(bounceHeightEnemyLevel1, name: "bounceHeightEnemyLevel1");
			bounceHeightEnemyLevel2 = s.Serialize<float>(bounceHeightEnemyLevel2, name: "bounceHeightEnemyLevel2");
			bounceHeightEnemyLevel3 = s.Serialize<float>(bounceHeightEnemyLevel3, name: "bounceHeightEnemyLevel3");
			bounceHeightTalkingHatLevel1 = s.Serialize<float>(bounceHeightTalkingHatLevel1, name: "bounceHeightTalkingHatLevel1");
			bounceHeightTalkingHatLevel2 = s.Serialize<float>(bounceHeightTalkingHatLevel2, name: "bounceHeightTalkingHatLevel2");
			bounceHeightTalkingHatLevel3 = s.Serialize<float>(bounceHeightTalkingHatLevel3, name: "bounceHeightTalkingHatLevel3");
			bounceHeightPolylineLevel1 = s.Serialize<float>(bounceHeightPolylineLevel1, name: "bounceHeightPolylineLevel1");
			bounceHeightPolylineLevel2 = s.Serialize<float>(bounceHeightPolylineLevel2, name: "bounceHeightPolylineLevel2");
			bounceHeightPolylineLevel3 = s.Serialize<float>(bounceHeightPolylineLevel3, name: "bounceHeightPolylineLevel3");
			bounceHeightWave = s.Serialize<float>(bounceHeightWave, name: "bounceHeightWave");
			bounceHeightWaveLevel3 = s.Serialize<float>(bounceHeightWaveLevel3, name: "bounceHeightWaveLevel3");
			bounceEnemySpeedXMultiplier = s.Serialize<float>(bounceEnemySpeedXMultiplier, name: "bounceEnemySpeedXMultiplier");
			bouncePlatformAirControlDelayLevel1 = s.Serialize<float>(bouncePlatformAirControlDelayLevel1, name: "bouncePlatformAirControlDelayLevel1");
			bouncePlatformAirControlDelayLevel2 = s.Serialize<float>(bouncePlatformAirControlDelayLevel2, name: "bouncePlatformAirControlDelayLevel2");
			bouncePlatformAirControlDelayLevel3 = s.Serialize<float>(bouncePlatformAirControlDelayLevel3, name: "bouncePlatformAirControlDelayLevel3");
			bounceEnemyAirControlDelayLevel1 = s.Serialize<float>(bounceEnemyAirControlDelayLevel1, name: "bounceEnemyAirControlDelayLevel1");
			bounceEnemyAirControlDelayLevel2 = s.Serialize<float>(bounceEnemyAirControlDelayLevel2, name: "bounceEnemyAirControlDelayLevel2");
			bounceEnemyAirControlDelayLevel3 = s.Serialize<float>(bounceEnemyAirControlDelayLevel3, name: "bounceEnemyAirControlDelayLevel3");
			bounceTalkingHatAirControlDelayLevel1 = s.Serialize<float>(bounceTalkingHatAirControlDelayLevel1, name: "bounceTalkingHatAirControlDelayLevel1");
			bounceTalkingHatAirControlDelayLevel2 = s.Serialize<float>(bounceTalkingHatAirControlDelayLevel2, name: "bounceTalkingHatAirControlDelayLevel2");
			bounceTalkingHatAirControlDelayLevel3 = s.Serialize<float>(bounceTalkingHatAirControlDelayLevel3, name: "bounceTalkingHatAirControlDelayLevel3");
			bouncePolylineMaxXSpeed = s.Serialize<float>(bouncePolylineMaxXSpeed, name: "bouncePolylineMaxXSpeed");
			bounceDelay = s.Serialize<float>(bounceDelay, name: "bounceDelay");
			bounceRepositionDuration = s.Serialize<float>(bounceRepositionDuration, name: "bounceRepositionDuration");
			bounceToActorYFuncPoint0Dist = s.Serialize<float>(bounceToActorYFuncPoint0Dist, name: "bounceToActorYFuncPoint0Dist");
			bounceToActorYFuncPoint1Dist = s.Serialize<float>(bounceToActorYFuncPoint1Dist, name: "bounceToActorYFuncPoint1Dist");
			bounceToActorXZFuncPoint0T = s.Serialize<float>(bounceToActorXZFuncPoint0T, name: "bounceToActorXZFuncPoint0T");
			bounceToActorXZFuncPoint1T = s.Serialize<float>(bounceToActorXZFuncPoint1T, name: "bounceToActorXZFuncPoint1T");
			bounceToActorSpeed = s.Serialize<float>(bounceToActorSpeed, name: "bounceToActorSpeed");
			bounceToActorMinTime = s.Serialize<float>(bounceToActorMinTime, name: "bounceToActorMinTime");
			windTunnelExitSpeedLevel0 = s.Serialize<float>(windTunnelExitSpeedLevel0, name: "windTunnelExitSpeedLevel0");
			windTunnelExitSpeedLevel1 = s.Serialize<float>(windTunnelExitSpeedLevel1, name: "windTunnelExitSpeedLevel1");
			windTunnelExitSpeedLevel2 = s.Serialize<float>(windTunnelExitSpeedLevel2, name: "windTunnelExitSpeedLevel2");
			controllerClimbCollisionCheckExtent = s.SerializeObject<Vec2d>(controllerClimbCollisionCheckExtent, name: "controllerClimbCollisionCheckExtent");
			controllerClimbVerticalSpeedUp = s.Serialize<float>(controllerClimbVerticalSpeedUp, name: "controllerClimbVerticalSpeedUp");
			controllerClimbVerticalAscendAcceleration = s.Serialize<float>(controllerClimbVerticalAscendAcceleration, name: "controllerClimbVerticalAscendAcceleration");
			controllerClimbVerticalDescendAcceleration = s.Serialize<float>(controllerClimbVerticalDescendAcceleration, name: "controllerClimbVerticalDescendAcceleration");
			controllerClimbVerticalDescendMaxSpeed = s.Serialize<float>(controllerClimbVerticalDescendMaxSpeed, name: "controllerClimbVerticalDescendMaxSpeed");
			controllerClimbVerticalDescendMaxSpeedSprint = s.Serialize<float>(controllerClimbVerticalDescendMaxSpeedSprint, name: "controllerClimbVerticalDescendMaxSpeedSprint");
			controllerClimbHorizontalSpeed = s.Serialize<float>(controllerClimbHorizontalSpeed, name: "controllerClimbHorizontalSpeed");
			controllerClimbHorizontalMoveAnimRate = s.Serialize<float>(controllerClimbHorizontalMoveAnimRate, name: "controllerClimbHorizontalMoveAnimRate");
			controllerClimbSprintSpeedMultiplier = s.Serialize<float>(controllerClimbSprintSpeedMultiplier, name: "controllerClimbSprintSpeedMultiplier");
			controllerClimbHorizontalDescendMaxSpeed = s.Serialize<float>(controllerClimbHorizontalDescendMaxSpeed, name: "controllerClimbHorizontalDescendMaxSpeed");
			controllerClimbHorizontalDescendMaxSpeedSprint = s.Serialize<float>(controllerClimbHorizontalDescendMaxSpeedSprint, name: "controllerClimbHorizontalDescendMaxSpeedSprint");
			controllerClimbSlideDisableAirControl = s.Serialize<float>(controllerClimbSlideDisableAirControl, name: "controllerClimbSlideDisableAirControl");
			controllerClimbEdgeInertiaBrake = s.Serialize<float>(controllerClimbEdgeInertiaBrake, name: "controllerClimbEdgeInertiaBrake");
			controllerClimbEdgeDistanceRange = s.Serialize<float>(controllerClimbEdgeDistanceRange, name: "controllerClimbEdgeDistanceRange");
			controllerClimbEdgeActivationTime = s.Serialize<float>(controllerClimbEdgeActivationTime, name: "controllerClimbEdgeActivationTime");
			controllerClimbEdgeSwingImpulse = s.Serialize<float>(controllerClimbEdgeSwingImpulse, name: "controllerClimbEdgeSwingImpulse");
			controllerClimbEdgeSwingImpulseReduced = s.Serialize<float>(controllerClimbEdgeSwingImpulseReduced, name: "controllerClimbEdgeSwingImpulseReduced");
			controllerClimbEdgePunchImpulse = s.Serialize<float>(controllerClimbEdgePunchImpulse, name: "controllerClimbEdgePunchImpulse");
			controllerClimbEdgeMoveImpulse = s.Serialize<float>(controllerClimbEdgeMoveImpulse, name: "controllerClimbEdgeMoveImpulse");
			controllerClimbEdgeAngularSpeed = s.SerializeObject<Angle>(controllerClimbEdgeAngularSpeed, name: "controllerClimbEdgeAngularSpeed");
			controllerClimbEdgeCoopHangEdgeRange = s.Serialize<float>(controllerClimbEdgeCoopHangEdgeRange, name: "controllerClimbEdgeCoopHangEdgeRange");
			controllerClimbMaxJumpSpeedTransfer = s.SerializeObject<Vec2d>(controllerClimbMaxJumpSpeedTransfer, name: "controllerClimbMaxJumpSpeedTransfer");
			controllerPunchShapeOffset = s.SerializeObject<Vec2d>(controllerPunchShapeOffset, name: "controllerPunchShapeOffset");
			controllerReceivePunchFrontWeakForce = s.Serialize<float>(controllerReceivePunchFrontWeakForce, name: "controllerReceivePunchFrontWeakForce");
			controllerReceivePunchFrontStrongForce = s.Serialize<float>(controllerReceivePunchFrontStrongForce, name: "controllerReceivePunchFrontStrongForce");
			controllerReceivePunchFrontMegaForce = s.Serialize<float>(controllerReceivePunchFrontMegaForce, name: "controllerReceivePunchFrontMegaForce");
			controllerReceivePunchFrontWeakFrictionMult = s.Serialize<float>(controllerReceivePunchFrontWeakFrictionMult, name: "controllerReceivePunchFrontWeakFrictionMult");
			controllerReceivePunchFrontStrongFrictionMult = s.Serialize<float>(controllerReceivePunchFrontStrongFrictionMult, name: "controllerReceivePunchFrontStrongFrictionMult");
			controllerReceivePunchFrontMegaFrictionMult = s.Serialize<float>(controllerReceivePunchFrontMegaFrictionMult, name: "controllerReceivePunchFrontMegaFrictionMult");
			controllerReceivePunchUpWeakForce = s.Serialize<float>(controllerReceivePunchUpWeakForce, name: "controllerReceivePunchUpWeakForce");
			controllerReceivePunchUpStrongForce = s.Serialize<float>(controllerReceivePunchUpStrongForce, name: "controllerReceivePunchUpStrongForce");
			controllerReceivePunchUpMegaForce = s.Serialize<float>(controllerReceivePunchUpMegaForce, name: "controllerReceivePunchUpMegaForce");
			controllerReceivePunchUpWeakGravityMultiplier = s.Serialize<float>(controllerReceivePunchUpWeakGravityMultiplier, name: "controllerReceivePunchUpWeakGravityMultiplier");
			controllerReceivePunchUpStrongGravityMultiplier = s.Serialize<float>(controllerReceivePunchUpStrongGravityMultiplier, name: "controllerReceivePunchUpStrongGravityMultiplier");
			controllerReceivePunchUpMegaGravityMultiplier = s.Serialize<float>(controllerReceivePunchUpMegaGravityMultiplier, name: "controllerReceivePunchUpMegaGravityMultiplier");
			controllerReceiveEarthquakeWeakForce = s.Serialize<float>(controllerReceiveEarthquakeWeakForce, name: "controllerReceiveEarthquakeWeakForce");
			controllerReceiveEarthquakeStrongForce = s.Serialize<float>(controllerReceiveEarthquakeStrongForce, name: "controllerReceiveEarthquakeStrongForce");
			controllerReceiveEarthquakeMegaForce = s.Serialize<float>(controllerReceiveEarthquakeMegaForce, name: "controllerReceiveEarthquakeMegaForce");
			controllerReceiveBounceVWeakForce = s.Serialize<float>(controllerReceiveBounceVWeakForce, name: "controllerReceiveBounceVWeakForce");
			controllerReceiveBounceVStrongForce = s.Serialize<float>(controllerReceiveBounceVStrongForce, name: "controllerReceiveBounceVStrongForce");
			controllerReceiveBounceVMegaForce = s.Serialize<float>(controllerReceiveBounceVMegaForce, name: "controllerReceiveBounceVMegaForce");
			controllerReceiveBounceHWeakForce = s.Serialize<float>(controllerReceiveBounceHWeakForce, name: "controllerReceiveBounceHWeakForce");
			controllerReceiveBounceHStrongForce = s.Serialize<float>(controllerReceiveBounceHStrongForce, name: "controllerReceiveBounceHStrongForce");
			controllerReceiveBounceHMegaForce = s.Serialize<float>(controllerReceiveBounceHMegaForce, name: "controllerReceiveBounceHMegaForce");
			controllerReceiveBounceWeakFrictionMultiplier = s.Serialize<float>(controllerReceiveBounceWeakFrictionMultiplier, name: "controllerReceiveBounceWeakFrictionMultiplier");
			controllerReceiveBounceStrongFrictionMultiplier = s.Serialize<float>(controllerReceiveBounceStrongFrictionMultiplier, name: "controllerReceiveBounceStrongFrictionMultiplier");
			controllerReceiveBounceMegaFrictionMultiplier = s.Serialize<float>(controllerReceiveBounceMegaFrictionMultiplier, name: "controllerReceiveBounceMegaFrictionMultiplier");
			controllerReceiveBounceWeakSwimingMult = s.Serialize<float>(controllerReceiveBounceWeakSwimingMult, name: "controllerReceiveBounceWeakSwimingMult");
			controllerReceiveBounceStrongSwimingMult = s.Serialize<float>(controllerReceiveBounceStrongSwimingMult, name: "controllerReceiveBounceStrongSwimingMult");
			controllerReceiveBounceMegaSwimingMult = s.Serialize<float>(controllerReceiveBounceMegaSwimingMult, name: "controllerReceiveBounceMegaSwimingMult");
			controllerReceiveHitSwimGravityMultiplier = s.Serialize<float>(controllerReceiveHitSwimGravityMultiplier, name: "controllerReceiveHitSwimGravityMultiplier");
			controllerSlideFrictionMultiplier = s.Serialize<float>(controllerSlideFrictionMultiplier, name: "controllerSlideFrictionMultiplier");
			controllerSlideMinFastSpeed = s.Serialize<float>(controllerSlideMinFastSpeed, name: "controllerSlideMinFastSpeed");
			controllerSlideHitLevel = s.Serialize<uint>(controllerSlideHitLevel, name: "controllerSlideHitLevel");
			controllerSlideMinSpeed = s.Serialize<float>(controllerSlideMinSpeed, name: "controllerSlideMinSpeed");
			controllerSlideMinSpeedMultiplierForMinFriction = s.Serialize<float>(controllerSlideMinSpeedMultiplierForMinFriction, name: "controllerSlideMinSpeedMultiplierForMinFriction");
			controllerSlideMinSpeedMultiplierForMaxFriction = s.Serialize<float>(controllerSlideMinSpeedMultiplierForMaxFriction, name: "controllerSlideMinSpeedMultiplierForMaxFriction");
			controllerSlideFallDelay = s.Serialize<float>(controllerSlideFallDelay, name: "controllerSlideFallDelay");
			controllerSurfingJumpTime = s.Serialize<float>(controllerSurfingJumpTime, name: "controllerSurfingJumpTime");
			controllerHoverMinYSpeed = s.Serialize<float>(controllerHoverMinYSpeed, name: "controllerHoverMinYSpeed");
			controllerMettrailleMaxHits = s.Serialize<float>(controllerMettrailleMaxHits, name: "controllerMettrailleMaxHits");
			controllerMettrailleFinalHitLevel = s.Serialize<uint>(controllerMettrailleFinalHitLevel, name: "controllerMettrailleFinalHitLevel");
			controllerMettrailleGroundVariation = s.Serialize<uint>(controllerMettrailleGroundVariation, name: "controllerMettrailleGroundVariation");
			controllerMettrailleAirVariation = s.Serialize<uint>(controllerMettrailleAirVariation, name: "controllerMettrailleAirVariation");
			controllerMettrailleMaxBufferedHits = s.Serialize<uint>(controllerMettrailleMaxBufferedHits, name: "controllerMettrailleMaxBufferedHits");
			controllerAccrobaticStageKeepTime = s.Serialize<float>(controllerAccrobaticStageKeepTime, name: "controllerAccrobaticStageKeepTime");
			controllerSwingAdjustTime = s.Serialize<float>(controllerSwingAdjustTime, name: "controllerSwingAdjustTime");
			controllerSwingInterpolateTime = s.Serialize<float>(controllerSwingInterpolateTime, name: "controllerSwingInterpolateTime");
			controllerSwingHitAreaHeight = s.Serialize<float>(controllerSwingHitAreaHeight, name: "controllerSwingHitAreaHeight");
			controllerSwingHitAreaOffset = s.Serialize<float>(controllerSwingHitAreaOffset, name: "controllerSwingHitAreaOffset");
			controllerSwingHitMinAngularSpeed = s.Serialize<float>(controllerSwingHitMinAngularSpeed, name: "controllerSwingHitMinAngularSpeed");
			controllerSwingInitialBoost = s.Serialize<float>(controllerSwingInitialBoost, name: "controllerSwingInitialBoost");
			controllerSwingJumpXForceThreshold = s.Serialize<float>(controllerSwingJumpXForceThreshold, name: "controllerSwingJumpXForceThreshold");
			controllerSwingJumpXAngleThreshold = s.Serialize<float>(controllerSwingJumpXAngleThreshold, name: "controllerSwingJumpXAngleThreshold");
			controllerSwingJumpForceX = s.Serialize<float>(controllerSwingJumpForceX, name: "controllerSwingJumpForceX");
			controllerSwingJumpDisableDelay = s.Serialize<float>(controllerSwingJumpDisableDelay, name: "controllerSwingJumpDisableDelay");
			controllerUTurnHitLevel = s.Serialize<uint>(controllerUTurnHitLevel, name: "controllerUTurnHitLevel");
			controllerUTurnAirHitLevel = s.Serialize<uint>(controllerUTurnAirHitLevel, name: "controllerUTurnAirHitLevel");
			controllerCrouchedHitLevel = s.Serialize<uint>(controllerCrouchedHitLevel, name: "controllerCrouchedHitLevel");
			controllerTornadoHitLevel = s.Serialize<uint>(controllerTornadoHitLevel, name: "controllerTornadoHitLevel");
			controllerSpinHitLevel = s.Serialize<uint>(controllerSpinHitLevel, name: "controllerSpinHitLevel");
			controllerReducedSizeHitLevel = s.Serialize<uint>(controllerReducedSizeHitLevel, name: "controllerReducedSizeHitLevel");
			controllerUpperkickHitLevel = s.Serialize<uint>(controllerUpperkickHitLevel, name: "controllerUpperkickHitLevel");
			controllerCrushHitLevel = s.Serialize<uint>(controllerCrushHitLevel, name: "controllerCrushHitLevel");
			controllerCrushHitIncreaseFirstTime = s.Serialize<float>(controllerCrushHitIncreaseFirstTime, name: "controllerCrushHitIncreaseFirstTime");
			controllerCrushHitIncreaseSecondTime = s.Serialize<float>(controllerCrushHitIncreaseSecondTime, name: "controllerCrushHitIncreaseSecondTime");
			controllerCrushHitRetriggerDelay = s.Serialize<float>(controllerCrushHitRetriggerDelay, name: "controllerCrushHitRetriggerDelay");
			controllerSlideDownHitLevel = s.Serialize<uint>(controllerSlideDownHitLevel, name: "controllerSlideDownHitLevel");
			controllerSwingHitLevel = s.Serialize<uint>(controllerSwingHitLevel, name: "controllerSwingHitLevel");
			controllerHangCoopHitLevel = s.Serialize<uint>(controllerHangCoopHitLevel, name: "controllerHangCoopHitLevel");
			controllerBurstHitLevel = s.Serialize<uint>(controllerBurstHitLevel, name: "controllerBurstHitLevel");
			controllerBurstAirHitLevel = s.Serialize<uint>(controllerBurstAirHitLevel, name: "controllerBurstAirHitLevel");
			controllerNormalPunchLevelForShakeCam = s.Serialize<uint>(controllerNormalPunchLevelForShakeCam, name: "controllerNormalPunchLevelForShakeCam");
			switchHitBufferTime = s.Serialize<float>(switchHitBufferTime, name: "switchHitBufferTime");
			UTurnComboTime = s.Serialize<float>(UTurnComboTime, name: "UTurnComboTime");
			crushHitSuspensionTime = s.Serialize<float>(crushHitSuspensionTime, name: "crushHitSuspensionTime");
			crushHitMinYSpeed = s.Serialize<float>(crushHitMinYSpeed, name: "crushHitMinYSpeed");
			crushHitYSpeedMultiplier = s.Serialize<float>(crushHitYSpeedMultiplier, name: "crushHitYSpeedMultiplier");
			crushHitDownForce = s.Serialize<float>(crushHitDownForce, name: "crushHitDownForce");
			crushHitFrictionMultiplier = s.Serialize<float>(crushHitFrictionMultiplier, name: "crushHitFrictionMultiplier");
			slideDownMinSpeed = s.Serialize<float>(slideDownMinSpeed, name: "slideDownMinSpeed");
			swimAttackNormalDuration = s.Serialize<float>(swimAttackNormalDuration, name: "swimAttackNormalDuration");
			swimAttackNormalSpeed = s.Serialize<float>(swimAttackNormalSpeed, name: "swimAttackNormalSpeed");
			swimAttackSprintDuration = s.Serialize<float>(swimAttackSprintDuration, name: "swimAttackSprintDuration");
			swimAttackSprintSpeed = s.Serialize<float>(swimAttackSprintSpeed, name: "swimAttackSprintSpeed");
			swimAttackCooldown = s.Serialize<float>(swimAttackCooldown, name: "swimAttackCooldown");
			swimAttackFriction = s.Serialize<float>(swimAttackFriction, name: "swimAttackFriction");
			swimAttackMinSpeed = s.Serialize<float>(swimAttackMinSpeed, name: "swimAttackMinSpeed");
			swimAttackMoveDamping = s.Serialize<float>(swimAttackMoveDamping, name: "swimAttackMoveDamping");
			swimAttackSpamTime = s.Serialize<float>(swimAttackSpamTime, name: "swimAttackSpamTime");
			swimAttackSpamImpulseMultiplier = s.Serialize<float>(swimAttackSpamImpulseMultiplier, name: "swimAttackSpamImpulseMultiplier");
			swimAttackSpamImpulseMultiplierSprint = s.Serialize<float>(swimAttackSpamImpulseMultiplierSprint, name: "swimAttackSpamImpulseMultiplierSprint");
			tornadoDuration = s.Serialize<float>(tornadoDuration, name: "tornadoDuration");
			tornadoSpeed = s.Serialize<float>(tornadoSpeed, name: "tornadoSpeed");
			tornadoCooldown = s.Serialize<float>(tornadoCooldown, name: "tornadoCooldown");
			tornadoMinSpeed = s.Serialize<float>(tornadoMinSpeed, name: "tornadoMinSpeed");
			tornadoFrictionMultiplier = s.Serialize<float>(tornadoFrictionMultiplier, name: "tornadoFrictionMultiplier");
			tornadoAllowMoveTime = s.Serialize<float>(tornadoAllowMoveTime, name: "tornadoAllowMoveTime");
			reducedSizeHitDuration = s.Serialize<float>(reducedSizeHitDuration, name: "reducedSizeHitDuration");
			reducedSizeHitAirDuration = s.Serialize<float>(reducedSizeHitAirDuration, name: "reducedSizeHitAirDuration");
			reducedSizeHitUpDuration = s.Serialize<float>(reducedSizeHitUpDuration, name: "reducedSizeHitUpDuration");
			reducedSizeHitFriction = s.Serialize<float>(reducedSizeHitFriction, name: "reducedSizeHitFriction");
			reducedSizeHitGravity = s.Serialize<float>(reducedSizeHitGravity, name: "reducedSizeHitGravity");
			reducedSizeHitSideForceGround = s.Serialize<float>(reducedSizeHitSideForceGround, name: "reducedSizeHitSideForceGround");
			reducedSizeHitSideForceAir = s.Serialize<float>(reducedSizeHitSideForceAir, name: "reducedSizeHitSideForceAir");
			reducedSizeHitUpForce = s.Serialize<float>(reducedSizeHitUpForce, name: "reducedSizeHitUpForce");
			reducedSizeHitMinSpeed = s.Serialize<float>(reducedSizeHitMinSpeed, name: "reducedSizeHitMinSpeed");
			reducedSizeHitCrushAttackQueueLength = s.Serialize<float>(reducedSizeHitCrushAttackQueueLength, name: "reducedSizeHitCrushAttackQueueLength");
			reducedSizeHitCrushDistance = s.Serialize<float>(reducedSizeHitCrushDistance, name: "reducedSizeHitCrushDistance");
			reducedSizeHitCooldown = s.Serialize<float>(reducedSizeHitCooldown, name: "reducedSizeHitCooldown");
			reducedSizeHitGroundFrictionMultiplierMin = s.Serialize<float>(reducedSizeHitGroundFrictionMultiplierMin, name: "reducedSizeHitGroundFrictionMultiplierMin");
			reducedSizeHitGroundFrictionMultiplierMax = s.Serialize<float>(reducedSizeHitGroundFrictionMultiplierMax, name: "reducedSizeHitGroundFrictionMultiplierMax");
			reducedSizeHitUpCooldown = s.Serialize<float>(reducedSizeHitUpCooldown, name: "reducedSizeHitUpCooldown");
			hitFxBoneName = s.SerializeObject<StringID>(hitFxBoneName, name: "hitFxBoneName");
			hitPrepareLengthWeak = s.Serialize<float>(hitPrepareLengthWeak, name: "hitPrepareLengthWeak");
			hitPrepareLengthStrong = s.Serialize<float>(hitPrepareLengthStrong, name: "hitPrepareLengthStrong");
			hitPrepareLengthMega = s.Serialize<float>(hitPrepareLengthMega, name: "hitPrepareLengthMega");
			reHitDelayPermanentHit = s.Serialize<float>(reHitDelayPermanentHit, name: "reHitDelayPermanentHit");
			reHitDelayComboHit = s.Serialize<float>(reHitDelayComboHit, name: "reHitDelayComboHit");
			wallSlideStartDelay = s.Serialize<float>(wallSlideStartDelay, name: "wallSlideStartDelay");
			wallSlideStartDelaySpeedThreshold = s.Serialize<float>(wallSlideStartDelaySpeedThreshold, name: "wallSlideStartDelaySpeedThreshold");
			wallSlideMinLinearSpeed = s.Serialize<float>(wallSlideMinLinearSpeed, name: "wallSlideMinLinearSpeed");
			wallSlideMaxLinearSpeed = s.Serialize<float>(wallSlideMaxLinearSpeed, name: "wallSlideMaxLinearSpeed");
			wallSlideMinAngularSpeed = s.SerializeObject<Angle>(wallSlideMinAngularSpeed, name: "wallSlideMinAngularSpeed");
			wallSlideMaxAngularSpeed = s.SerializeObject<Angle>(wallSlideMaxAngularSpeed, name: "wallSlideMaxAngularSpeed");
			wallSlideBrakeTime = s.Serialize<float>(wallSlideBrakeTime, name: "wallSlideBrakeTime");
			wallSlideStartSpeed = s.Serialize<float>(wallSlideStartSpeed, name: "wallSlideStartSpeed");
			wallSlideGravityMultiplier = s.Serialize<float>(wallSlideGravityMultiplier, name: "wallSlideGravityMultiplier");
			wallSlideJumpImpulseX = s.Serialize<float>(wallSlideJumpImpulseX, name: "wallSlideJumpImpulseX");
			wallSlideFrictionCoefCondition = s.Serialize<float>(wallSlideFrictionCoefCondition, name: "wallSlideFrictionCoefCondition");
			wallSlideMinimumEdgeMargin = s.Serialize<float>(wallSlideMinimumEdgeMargin, name: "wallSlideMinimumEdgeMargin");
			wallPushMaxWallAngle = s.SerializeObject<Angle>(wallPushMaxWallAngle, name: "wallPushMaxWallAngle");
			wallPushForce = s.Serialize<float>(wallPushForce, name: "wallPushForce");
			wallPushDelay = s.Serialize<float>(wallPushDelay, name: "wallPushDelay");
			wallPushRepushDelay = s.Serialize<float>(wallPushRepushDelay, name: "wallPushRepushDelay");
			wallSlideMaxSpeed = s.Serialize<float>(wallSlideMaxSpeed, name: "wallSlideMaxSpeed");
			wallSlideUnstickDelay = s.Serialize<float>(wallSlideUnstickDelay, name: "wallSlideUnstickDelay");
			wallSlideRestickDelay = s.Serialize<float>(wallSlideRestickDelay, name: "wallSlideRestickDelay");
			wallSlideExtraRadius = s.Serialize<float>(wallSlideExtraRadius, name: "wallSlideExtraRadius");
			wallSlideYSpeedThresholdToHang = s.Serialize<float>(wallSlideYSpeedThresholdToHang, name: "wallSlideYSpeedThresholdToHang");
			disableCrouchTime = s.Serialize<float>(disableCrouchTime, name: "disableCrouchTime");
			crouchUnhangTime = s.Serialize<float>(crouchUnhangTime, name: "crouchUnhangTime");
			rollingFrictionMultiplier = s.Serialize<float>(rollingFrictionMultiplier, name: "rollingFrictionMultiplier");
			rollingMinSpeed = s.Serialize<float>(rollingMinSpeed, name: "rollingMinSpeed");
			fallOnVictimMinSpeed = s.Serialize<float>(fallOnVictimMinSpeed, name: "fallOnVictimMinSpeed");
			sprintActivationLandingDelay = s.Serialize<float>(sprintActivationLandingDelay, name: "sprintActivationLandingDelay");
			sprintWalkForceMultiplier = s.Serialize<float>(sprintWalkForceMultiplier, name: "sprintWalkForceMultiplier");
			sprintEfficiencyMaxSpeedMultiplier = s.Serialize<float>(sprintEfficiencyMaxSpeedMultiplier, name: "sprintEfficiencyMaxSpeedMultiplier");
			sprintAccelerationDuration = s.Serialize<float>(sprintAccelerationDuration, name: "sprintAccelerationDuration");
			sprintReleaseForceMultiplier = s.Serialize<float>(sprintReleaseForceMultiplier, name: "sprintReleaseForceMultiplier");
			sprintReleaseForceMax = s.Serialize<float>(sprintReleaseForceMax, name: "sprintReleaseForceMax");
			bounceToLayerFXFile = s.SerializeObject<Path>(bounceToLayerFXFile, name: "bounceToLayerFXFile");
			tinyFXFile = s.SerializeObject<Path>(tinyFXFile, name: "tinyFXFile");
			tinyTrailSprintColor = s.SerializeObject<Color>(tinyTrailSprintColor, name: "tinyTrailSprintColor");
			tinyTrailWallrunColor = s.SerializeObject<Color>(tinyTrailWallrunColor, name: "tinyTrailWallrunColor");
			tinyTrailWallrunJumpColor = s.SerializeObject<Color>(tinyTrailWallrunJumpColor, name: "tinyTrailWallrunJumpColor");
			tinyTrailNormalColor = s.SerializeObject<Color>(tinyTrailNormalColor, name: "tinyTrailNormalColor");
			controllerPunchPushbackRadius = s.Serialize<float>(controllerPunchPushbackRadius, name: "controllerPunchPushbackRadius");
			phantomShapeCrouch = s.SerializeObject<Generic<PhysShape>>(phantomShapeCrouch, name: "phantomShapeCrouch");
			phantomShapeSwim = s.SerializeObject<Generic<PhysShape>>(phantomShapeSwim, name: "phantomShapeSwim");
			damageInmunityTime = s.Serialize<float>(damageInmunityTime, name: "damageInmunityTime");
			damageInmunityTimeReceiveHit = s.Serialize<float>(damageInmunityTimeReceiveHit, name: "damageInmunityTimeReceiveHit");
			damageInmunityTimeRevive = s.Serialize<float>(damageInmunityTimeRevive, name: "damageInmunityTimeRevive");
			damageInmunityTimeReceiveHitRevive = s.Serialize<float>(damageInmunityTimeReceiveHitRevive, name: "damageInmunityTimeReceiveHitRevive");
			squashBounceMargin = s.Serialize<float>(squashBounceMargin, name: "squashBounceMargin");
			squashHurtLevel = s.Serialize<uint>(squashHurtLevel, name: "squashHurtLevel");
			squashDeathPenetration = s.Serialize<float>(squashDeathPenetration, name: "squashDeathPenetration");
			characterSnapBone = s.SerializeObject<StringID>(characterSnapBone, name: "characterSnapBone");
			stateDeadSoul = s.SerializeObject<Ray_PlayerControllerComponent.StateDeadSoul_Template>(stateDeadSoul, name: "stateDeadSoul");
			stateRevive = s.SerializeObject<Ray_PlayerControllerComponent.StateRevive_Template>(stateRevive, name: "stateRevive");
			avoidanceRadius = s.Serialize<float>(avoidanceRadius, name: "avoidanceRadius");
			darktoonificationPosOffset = s.Serialize<float>(darktoonificationPosOffset, name: "darktoonificationPosOffset");
			controllerPedestalWalkMultiplier = s.Serialize<float>(controllerPedestalWalkMultiplier, name: "controllerPedestalWalkMultiplier");
			controllerPedestalAreaRadius = s.Serialize<float>(controllerPedestalAreaRadius, name: "controllerPedestalAreaRadius");
			controllerPedestalDistanceCheck = s.Serialize<float>(controllerPedestalDistanceCheck, name: "controllerPedestalDistanceCheck");
			controllerPedestalFeetDistanceCheck = s.Serialize<float>(controllerPedestalFeetDistanceCheck, name: "controllerPedestalFeetDistanceCheck");
			controllerPedestalDisableTimer = s.Serialize<float>(controllerPedestalDisableTimer, name: "controllerPedestalDisableTimer");
			controllerPedestalInputCone = s.SerializeObject<Angle>(controllerPedestalInputCone, name: "controllerPedestalInputCone");
			controllerOnPedestalLandBounceHeight = s.Serialize<float>(controllerOnPedestalLandBounceHeight, name: "controllerOnPedestalLandBounceHeight");
			controllerDeathSeqWait = s.Serialize<float>(controllerDeathSeqWait, name: "controllerDeathSeqWait");
			controllerMoveCursorMinEfficiency = s.Serialize<float>(controllerMoveCursorMinEfficiency, name: "controllerMoveCursorMinEfficiency");
			controllerMoveCursorMaxEfficiency = s.Serialize<float>(controllerMoveCursorMaxEfficiency, name: "controllerMoveCursorMaxEfficiency");
			controllerMoveCursorMinAngle = s.Serialize<float>(controllerMoveCursorMinAngle, name: "controllerMoveCursorMinAngle");
			controllerMoveCursorMaxAngle = s.Serialize<float>(controllerMoveCursorMaxAngle, name: "controllerMoveCursorMaxAngle");
			controllerMoveCursorMinMultiplier = s.Serialize<float>(controllerMoveCursorMinMultiplier, name: "controllerMoveCursorMinMultiplier");
			controllerMoveCursorMaxMultiplier = s.Serialize<float>(controllerMoveCursorMaxMultiplier, name: "controllerMoveCursorMaxMultiplier");
			controllerMoveCursorEfficiencyAngle = s.Serialize<float>(controllerMoveCursorEfficiencyAngle, name: "controllerMoveCursorEfficiencyAngle");
			controllerWalkOnWallsDisableDelay = s.Serialize<float>(controllerWalkOnWallsDisableDelay, name: "controllerWalkOnWallsDisableDelay");
			controllerWalkOnWallsReleaseStickDuration = s.Serialize<float>(controllerWalkOnWallsReleaseStickDuration, name: "controllerWalkOnWallsReleaseStickDuration");
			controllerDeathActorFXSpawn = s.SerializeObject<Path>(controllerDeathActorFXSpawn, name: "controllerDeathActorFXSpawn");
			offscreenDeathMargin = s.SerializeObject<Margin>(offscreenDeathMargin, name: "offscreenDeathMargin");
			offscreenDeathSmooth = s.Serialize<float>(offscreenDeathSmooth, name: "offscreenDeathSmooth");
			offscreenDeathFxMargin = s.SerializeObject<Margin>(offscreenDeathFxMargin, name: "offscreenDeathFxMargin");
			applyWindSpeedLimitation = s.Serialize<bool>(applyWindSpeedLimitation, name: "applyWindSpeedLimitation");
			clampMaxSpeedTotal = s.Serialize<float>(clampMaxSpeedTotal, name: "clampMaxSpeedTotal");
			clampMaxSpeedX = s.Serialize<float>(clampMaxSpeedX, name: "clampMaxSpeedX");
			clampMaxSpeedY = s.Serialize<float>(clampMaxSpeedY, name: "clampMaxSpeedY");
			airBrakeMaxSpeedX = s.Serialize<float>(airBrakeMaxSpeedX, name: "airBrakeMaxSpeedX");
			softCollisionRadiusMultiplier = s.Serialize<float>(softCollisionRadiusMultiplier, name: "softCollisionRadiusMultiplier");
			softCollisionExitSpeed = s.Serialize<float>(softCollisionExitSpeed, name: "softCollisionExitSpeed");
			softCollisionExitForce = s.Serialize<float>(softCollisionExitForce, name: "softCollisionExitForce");
			softCollisionRestoreForceDelay = s.Serialize<float>(softCollisionRestoreForceDelay, name: "softCollisionRestoreForceDelay");
			softCollisionRestoreForceDuration = s.Serialize<float>(softCollisionRestoreForceDuration, name: "softCollisionRestoreForceDuration");
			cameraLimiterMaxCoeff = s.Serialize<float>(cameraLimiterMaxCoeff, name: "cameraLimiterMaxCoeff");
			stargateSuckinForceK = s.Serialize<float>(stargateSuckinForceK, name: "stargateSuckinForceK");
			stargateSuckinForceD = s.Serialize<float>(stargateSuckinForceD, name: "stargateSuckinForceD");
			stargateNoiseAmplitude = s.Serialize<float>(stargateNoiseAmplitude, name: "stargateNoiseAmplitude");
			stargateNoiseTimeMultiplier = s.Serialize<float>(stargateNoiseTimeMultiplier, name: "stargateNoiseTimeMultiplier");
			stargateTravelRotationSpeedMultiplier = s.Serialize<float>(stargateTravelRotationSpeedMultiplier, name: "stargateTravelRotationSpeedMultiplier");
			stargateTravelDecelerateTime = s.Serialize<float>(stargateTravelDecelerateTime, name: "stargateTravelDecelerateTime");
			stargateTravelDecelerateMultiplier = s.Serialize<float>(stargateTravelDecelerateMultiplier, name: "stargateTravelDecelerateMultiplier");
			stargateTravelTrailPath = s.SerializeObject<Path>(stargateTravelTrailPath, name: "stargateTravelTrailPath");
			deadSoulInactiveOptOutTime = s.Serialize<float>(deadSoulInactiveOptOutTime, name: "deadSoulInactiveOptOutTime");
			heartShield = s.SerializeObject<Ray_HeartShield_Template>(heartShield, name: "heartShield");
			if (Settings.s.game == Settings.Game.RFR) {
				magnet = s.SerializeObject<Ray_Magnet_Template>(magnet, name: "magnet");
				phoenixGadget = s.SerializeObject<Ray_PhoenixGadget_Template>(phoenixGadget, name: "phoenixGadget");
			}
			superPunchBasicGauge = s.SerializeObject<Ray_SuperPunchGauge_Template>(superPunchBasicGauge, name: "superPunchBasicGauge");
			superPunchSeekingGauge = s.SerializeObject<Ray_SuperPunchGauge_Template>(superPunchSeekingGauge, name: "superPunchSeekingGauge");
			swarmRepeller = s.SerializeObject<Ray_SwarmRepellerPowerUp_Template>(swarmRepeller, name: "swarmRepeller");
		}
		public override uint? ClassCRC => 0xB0B02FC0;
	}
}

